The Liberty Basic Newsletter - Issue #118 - March 2004 
Please download the Zip Archive of this issue to get all associated files
"Hi, there! This is Eddie, your shipboard computer, and I'm feeling just great, guys. And I just know I'm going to get a bundle of kicks out of any program you care to run through me." -- David Tate (Eddie) from The Hitchhiker's Guide to the Galaxy. Listen to Eddie.
Text to Speech with Liberty BASIC - By Stefan Pendl
Two Puzzles for Novices - By Janet Terra
Multiple Slider Controls - By Mike Bradbury
Symmetrical Paint - By Tom Nally
Programming With Style - By Jim Brossman
Progress Simulator - By Gordon Rahman
CD Menus - By Gordon Sweet
Media File Search - By Gordon Sweet
Why Liberty BASIC? - By Gordon Sweet
Divorced fifty-something male seeking female of same--or similar--species. Loves slow walks along the beach and API calls. Love interest must have a valid drivers license and a 19" flat-panel monitor. Viewsonic preferred, Sony OK. Please, no responses from invertebrates or machine language programmers.
Ladies, if this is your dream guy, send email to personals@LB.LoveConnection.com
The high quality of the contributions this month made NL118 especially fun to assemble! And if you think that LB programmers aren't talented then dude, you just aren't paying attention!
Following Gordon Sweet's speech synthesis article that appeared in NL117, the leadoff article in NL118 is Stefan Pendl's Text to Speech with Liberty BASIC. Stefan's article discusses the serendipitous background for his text-to-speech applications, and then provides a "system check" program to determine whether the user is set up for text-to-speech using Microsoft agents. The real payoff can be found in the zip archive accompanying this newsletter where Stefan provides three (count 'em, folks) text-to-speech applications. These apps differ in the number of text-to-speech features that they offer. My own favorite happens to be Text2Speech_delux.bas, which has a very attractively designed main window. Good going, Stefan!
Next in line, Janet Terra contributes two interesting and addictive puzzles to NL118 in Two Puzzles for Novices. In Janet's Block Puzzle game, the user fits rectangularly edged puzzle pieces into a square puzzle board. Janet provides a nice discussion of how LB's sprite scaling and rotation commands are used to make this game work.
Janet's Ring Puzzle game features intersecting rings of multi-colored dots. At game start, a particular pattern to the colored dots is established. After the dots are "shuffled", the user is asked to rearrange the dots back to the original pattern. This is done by rotating the dot rings, which allows the user to pass dots between adjacent rings. Janet reveals that sprites are not used in Ring Puzzle. Rather, LB's color filling commands do the job. Additionally, Janet mentions that this his her first adventure into API calls. Well done, Janet.

Picasso declined to
use Nally's
Symmetrical Paint
Next, Mike Bradbury provides a very nice contribution which shows the user how to make slider controls. Great example, Mike! Another non-native LB control now becomes available to all LB programmers!
Don't fall asleep, folks. We ain't done yet!
Nally comes on board next with his new application, Symmetrical Paint. This application allows all budding artists to make beautiful symmetrical doodles without even trying! (Hey, I offered this application to Pablo Picasso, but he declined. Without Symmetrical Paint, Picasso got the disturbing results shown on the right.)
Jim Brossman delivers a very well-written article called Programming With Style. Jim says that programmers who have aspirations of writing 10,000 line programs need to devote attention to the orderly arrangement of their code. That way, months and years down the road, the program will still be readable by the programmer and others. Job well done, Jim. (I suspect Jim's programming code is as finely crafted as his articles!)
Regular contributor Gordon Rahman follows up with a nice essay and demo program on how to make a Progress Bar Simulator. Gordon R. has skillfully employed functions and routines developed by others, and married them together into a nice demo. Thanks a million, Gordon!
Last, prolific contributor Gordon Sweet provides a trio of demos and articles! In the first, Gordon S. gives a demo program of a menuing system suitable for a writable CD containing your own applications. If you try it out, make sure that you have a bitmap file named cover.bmp in the default directory. Gordon S's second demo shows how to search an entire drive for multimedia files, create a menu containing the file names, and then click-to-play. Last, in Why Liberty BASIC? Gordon discusses why custom-made applications with LB can be superior to commercial apps!
Well, friends, I'd love to stick around and chat a little longer, but I've got to take my goldfish out for a walk. He's scratching at the door, like he always does when he has to...to...well, you know.
Liberty BASIC Newsletter 118 is now secure. Nally out.
SUBMISSIONS
The Liberty BASIC Newsletter encourages all LB programmers to submit articles for publication. Everyone has something valuable to say, from beginners to veteran LBers. Consider sharing a code routine, with explanation. Perhaps you can review a favorite LB website, or program, or coding tool? Why not submit a list of questions that have been nagging at you? How about sharing your favorite algorithm?
The Publishing Team:
Alyce Watson: alycewatson@charter.net
Brad Moore: brad.moore@weyerhaeuser.com
Tom Nally: SteelWeaver52@aol.com
Carl Gundel: carlg@libertybasic.com
Bill Jennings: bbjen@bigfoot.com